package controllers

//import (
//	"encoding/json"
//	"fmt"
//	"github.com/astaxie/beego"
//	"github.com/astaxie/beego/validation"
//	"myapp/web/green/models"
//)

//type ReturnMessage struct {
//	Message, Key string
//}

//var messageList [1]ReturnMessage

////创建User
//type UserCreate struct {
//	beego.Controller
//}

//func (this *UserCreate) Post() {
//	var user models.User
//	body := this.Ctx.Input.RequestBody
//	json.Unmarshal(body, &user)

//	valid := validation.Validation{}
//	//校验Username
//	valid.MinSize(user.Username, 3, "usernameMin").Message("请输入长度大于3的字符串")
//	valid.MaxSize(user.Username, 60, "usernameMax").Message("请输入长度小于60的字符串")
//	//校验Goodname
//	valid.MinSize(user.Goodname, 3, "goodnameMin").Message("请输入长度大于3的字符串")
//	valid.MaxSize(user.Goodname, 60, "goodnameMax").Message("请输入长度小于60的字符串")
//	//校验Email
//	valid.Email(user.Email, "emailerr").Message("请输入正确的Email地址")
//	//校验Password
//	valid.MinSize(user.Password, 6, "passwordMin").Message("请输入长度大于6的字符串")
//	valid.MaxSize(user.Password, 60, "passwordMax").Message("请输入长度小于60的字符串")
//	//校验用户名是否已经注册过
//	username := Username2Md5(user.Username)
//	u := models.FindUser(username)
//	if u == true {
//		usernameerr := validation.ValidationError{Message: "用户名已被注册", Key: "usernameAgain"}
//		valid.Errors = append(valid.Errors, &usernameerr)
//	}
//	//校验昵称是否已经注册过
//	u2 := models.FindUser(user.Goodname)
//	if u2 == true {
//		goodnameerr := validation.ValidationError{Message: "昵称已被注册", Key: "goodnameAgain"}
//		valid.Errors = append(valid.Errors, &goodnameerr)
//	}

//	if valid.HasErrors() == true {
//		list := valid.Errors
//		this.Data["json"] = list
//		fmt.Printf("errlist:=%v\n", list)
//		this.ServeJson()
//	} else {
//		v := this.GetSession("UserGoodname")
//		fmt.Printf("v: %v\n", v)
//		if v == nil {
//			//fmt.Println("bbbbbb")
//			//password := Password2Md5(user.Password)
//			//0为普通注册用户
//			//user.Level = 0
//			//user.Username = username
//			//user.Password = password
//			fmt.Printf("USER: %v\n", user)
//			//user.UserCreate()
//			this.SetSession("UserGoodname", user.Goodname)
//			messageList[0] = ReturnMessage{"", "registerSuccess"}
//			fmt.Printf("messageList1:=%v\n", messageList)
//			this.Data["json"] = messageList
//			this.ServeJson()
//		} else {
//			fmt.Printf("v: %v\n", v)
//			messageList[0] = ReturnMessage{"", "logout"}
//			fmt.Printf("messageList2:=%v\n", messageList)
//			this.Data["json"] = messageList
//			this.ServeJson()
//		}
//	}
//}

////登录验证
//type UserLogin struct {
//	beego.Controller
//}

//func (this *UserLogin) Post() {
//	var user models.User
//	body := this.Ctx.Input.RequestBody
//	json.Unmarshal(body, &user)

//	password := Password2Md5(user.Password)
//	username := Username2Md5(user.Username)
//	b, u := models.CheckLogin(username, password)
//	if b == false {
//		messageList[0] = ReturnMessage{"用户名或密码错误!", "uperr"}
//		this.Data["json"] = messageList
//		this.ServeJson()
//	} else {
//		v := this.GetSession("UserGoodname")
//		fmt.Printf("v: %v\n", v)
//		if v == nil {
//			fmt.Printf("USER: %v\n", u)
//			this.SetSession("UserGoodname", u.Goodname)
//		}
//		messageList[0] = ReturnMessage{"", "loginSuccess"}
//		this.Data["json"] = messageList
//		this.ServeJson()
//	}

//}

////退出登录
//type UserLogout struct {
//	beego.Controller
//}

//func (this *UserLogout) Get() {
//	this.DelSession("UserGoodname")
//	messageList[0] = ReturnMessage{"", "logoutSuccess"}
//	this.Data["json"] = messageList
//	this.ServeJson()
//}

//取得User列表
// type UserList struct {
// 	beego.Controller
// }

// func (this *UserList) Post() {
// 	list, err := models.CategoryList()
// 	if err == nil {
// 		this.Data["json"] = &list
// 		this.ServeJson()
// 	}
// }
